#ifndef RAWTOSEGYFORM_H
#define RAWTOSEGYFORM_H
#include <QWidget>
#include <QWidget>
#include <QFileDialog>
#include <config/common.h>
#include <config/config.h>
#include "util/define.h"
#include "form/fileattributeform.h"
#include "thread/chinarawtosegythread.h"
#include "thread/francerawtosegythread.h"
#include "QFileInfo"

namespace Ui {
class RawToSegyForm;
}

class RawToSegyForm : public QWidget
{
    Q_OBJECT

public:
    explicit RawToSegyForm(QWidget *parent = 0);
    ~RawToSegyForm();
    void paintEvent(QPaintEvent *);
    void resizeEvent(QResizeEvent *);
private slots:
    void on_pushButton_remove_clicked();
    void on_pushButton_add_clicked();
    void on_pushButton_select_clicked();

    void on_radioButton_FF_clicked();
    void on_pushButton_file_clicked();
    void on_pushButton_save_clicked();
    void on_pushButton_transform_clicked();
    void fileFinish(QString fileName);
    void fileAllFranceRawToSegyThread();
    void fileAllChinaRawToSegyThread();
    void transformValue(double value);
    void on_pushButton_nav_clicked();
    void on_pushButton_xml_clicked();
    void on_pushButton_dec_clicked();
    void on_listWidget_file_doubleClicked(const QModelIndex &index);
    void showDialog(QString str);

    void on_radioButton_HOBS_clicked();

    void on_radioButton_IOBS_clicked();

    void on_radioButton_IGOBS_clicked();

private:
    Ui::RawToSegyForm *ui;
    Common *common;
    Config *config;
    DATAFORMAT format;
    float step ;
    float progressBarValue;
    int margin;
    FranceRawToSegyThread *francethread;
    ChinaRawToSegyThread  *chinathread;
};

#endif // RAWTOSEGYFORM_H
